button: Stop claiming event sequence on press
authorAlexander Mikhaylenko <alexm@gnome.org>
Fri, 25 Dec 2020 07:30:33 +0000 (12:30 +0500)
committerAlexander Mikhaylenko <alexm@gnome.org>
Fri, 29 Jan 2021 07:00:10 +0000 (12:00 +0500)
Currently GtkButton claims the sequence both on press and on release. Stop
claiming it on press and only do it on release, allowing drags to start
from it.

This will allow to remove a hack from GtkWindowHandle.

gtk/gtkbutton.c

index dc7955ff63c06a1b7677a59f9fd52b01fea0e30e..7424895a17e15961a42fbaf07c52c64d124f5482 100644 (file)
@@ -310,14 +310,10 @@ click_pressed_cb (GtkGestureClick *gesture,
 {
   GtkButton *button = GTK_BUTTON (widget);
   GtkButtonPrivate *priv = gtk_button_get_instance_private (button);
-  GdkEventSequence *sequence;
 
   if (gtk_widget_get_focus_on_click (widget) && !gtk_widget_has_focus (widget))
     gtk_widget_grab_focus (widget);
 
-  sequence = gtk_gesture_single_get_current_sequence (GTK_GESTURE_SINGLE (gesture));
-  gtk_gesture_set_sequence_state (GTK_GESTURE (gesture), sequence, GTK_EVENT_SEQUENCE_CLAIMED);
-
   if (!priv->activate_timeout)
     priv->button_down = TRUE;
 }